<?php
namespace Admin\Controller;
use Think\Controller;
class ShopController extends CommonController{
	public function index(){
		if($_SESSION['type'] == 0){
                $this->error('你没有权限');
            }
		session('page_size',$_GET['page_size']);
        $search = $_GET['user_name'];
        $page_no = I('get.p') ? I('get.p') : 1;
        $page_size = $_GET['page_size'] ? $_GET['page_size'] : 10;
        $MODEL = M("shop");
        $where['shop_name'] = array('like','%'.$search.'%');
        $where['del'] = '0';
        $data=$MODEL->page($page_no, $page_size)->order('id desc')->where($where)->select();
        $count = $MODEL->where($where)->count();
        //总记录数
        $Page = new \AntAge\Page($count, $page_size);
        // 实例化分页类 传入总记录数和每页显示的记录数
        $show = $Page->show();
        // 分页显示输出
        $this->assign('page', $show);
        // 赋值分页输出
        $this->assign("count", $count);


		$this->assign('data',$data);
		$this->assign('type',$_SESSION['type']);
		$this->display();
	}
	public function add(){
		if($_SESSION['type'] == 0){
                $this->error('你没有权限');
            }
		if ($_POST) {
			if (!$_POST['shop_name']) {
				$this->error('工厂名称不能为空');
			}
			if (!$_POST['en_name']) {
				$this->error('工厂英文名称不能为空');
			}
			$str=$_POST['en_name'];
			if(!preg_match("/^[a-zA-Z\s]+$/",$str)){
				$this->error('工厂英文名称只能是英文');
			}
			$name = M('shop')->getField('shop_name',true);
			if (in_array($_POST['shop_name'], $name)) {
				$this->error('此工厂名称已经存在');
			}

			$enname = M('shop')->getField('en_name',true);
			if (in_array($_POST['en_name'], $enname)) 
			{
				$this->error('此工厂英文名称已经存在');
			}
			if (!$_POST['contact1']) {
				$this->error('缺少联系人');
			}
			if (!$_POST['phone1']) {
				$this->error('缺少联系人电话');
			}
			if (!$_POST['phone1'] || !is_numeric($_POST['phone1'])) {
				$this->error('电话只能是数字');
			}
			if (!empty($_POST['phone2'])) {
				if (strlen($_POST['phone2']) != 11|| !is_numeric($_POST['phone2'])) {
					$this->error('电话只能是数字');
				}
			}
			if (!empty($_POST['phone1'])) {
				if (strlen($_POST['phone1']) != 11 || !is_numeric($_POST['phone1'])) {
					$this->error('号码只能是11位');
				}
			}
			
			if (!$_POST['addr']) {
				$this->error('客户地址不能为空');
			}
			$_POST['add_time'] = time();
			$res = M('shop')->add($_POST);
			if ($res) {
				$this->success('添加客户成功');
			}else{
				$this->error('添加失败');
			}
		}else{
			$this->assign('type',$_SESSION['type']);
			$this->display();
		}
	}

	public function edit(){
		if($_SESSION['type'] == 0){
                $this->error('你没有权限');
            }
		if ($_POST) {
			if (!$_POST['shop_name']) {
				$this->error('客户名称不能为空');
			}
			$thisname = M('shop')->where('id='.$_POST['id'])->getField('shop_name');
			if ($thisname != $_POST['shop_name']) {
				$name = M('shop')->getField('shop_name',true);
				if (in_array($_POST['shop_name'], $name)) {
					$this->error('此工厂名称已经存在');
				}
			}
			if (!$_POST['contact1']) {
				$this->error('缺少联系人');
			}
			if (!$_POST['phone1']) {
				$this->error('缺少联系人电话');
			}
			if (!empty($_POST['phone1'])) {
				if (!$_POST['phone1'] || !is_numeric($_POST['phone1'])) {
					$this->error('客户电话只能是数字');
				}
				if (strlen($_POST['phone1']) != 11) {
					$this->error('号码只能是11位');
				}
			}
			if (!empty($_POST['phone2'])) {
				if (!$_POST['phone2'] || !is_numeric($_POST['phone2'])) {
					$this->error('客户电话只能是数字');
				}
				if (strlen($_POST['phone2']) != 11) {
					$this->error('号码只能是11位');
				}
			}
			
			if (!$_POST['addr']) {
				$this->error('工厂地址不能为空');
			}
			$_POST['edit_time'] = time();
			$res = M('shop')->where('id='.$_POST['id'])->save($_POST);
			if ($res === false) {
				$this->error('修改失败');
			}else{
				$this->success('修改成功');
			}
		}else{
			$id = I('id');
			if (!$id) {
				$this->error('错误！id不存在');
			}
			$this->assign('type',$_SESSION['type']);
			$data = M('shop')->where(array('id'=>$id))->find();
			$this->assign('data',$data);
			$this->display();
		}
	}
	public function shopDel(){
		$id=I('id');
		$data = M('shop')->where(array('id'=>$id))->save(array('del'=>1));
		if ($data === false) {
			$this->error('删除失败');
		}else{
			$this->success('删除成功');
		}
	}
	public function scan(){
		$id = I('id');
		if (!$id) {
			$this->error('错误！id不存在');
		}
		$num = M('scan')->where(array('shop_id'=>$id))->order('id desc')->getField('number');

		$data = M('scan')->add(array('shop_id'=>$id,'add_time'=>time(),'number'=>$num+1));
		if ($data) {
			$this->success('发起成功');
		}else{
			$this->error('发起失败');
		}
	}

}